##### [Transition](https://sparxsystems.com/enterprise_architect_user_guide/15.1/model_domains/transition.html)  переход

![](_src/d-transition.png)

Description
If you need to define the logical movement from one State to another in a StateMachine diagram, you can drag a Transition connector from the Toolbox onto the diagram. You control the Transition through the connector 'Properties' dialog.

Описание
Если вам нужно определить логическое перемещение из одного состояния в другое на диаграмме StateMachine , вы можете перетащить соединитель перехода из панели инструментов на диаграмму. Вы управляете переходом через диалоговое окно «Свойства» коннектора.

| Field                                    | Action                                   | See also                                 |
|------------------------------------------|------------------------------------------|------------------------------------------|
| <br>			<p class="p_Tableheader"><br>				<span class="f_Tabletext">Guard</span><br>			</p><br>		 | <br>			<p><span class="f_BodyTextTable">Type in the expression to be evaluated after an Event is dispatched but before the corresponding Transition is triggered. </span></p><br>			<p><span class="f_BodyTextTable">If the guard is true at that time, the Transition is enabled; otherwise, it is disabled.</span></p><br>		 | <br>		                                   |
| <br>			<p class="p_Tableheader"><br>				<span class="f_Tabletext">Effect is a Behavior</span><br>			</p><br>		 | <br>			<p><span class="f_BodyTextTable">Convert the 'Effect' field from a free-text field to the definition of a specific Activity or behavior. </span></p><br>			<p><span class="f_BodyTextTable">The 'Select &lt;Item&gt;' dialog displays, prompting you to select the Activity or behavior element from the model.</span></p><br>		 | <br>			<a href="../modeling/instanceclassifier.html">Select <item> Dialog</item></a><br>		 |
| <br>			<p class="p_Tableheader"><br>				<span class="f_Tabletext">Effect</span><br>			</p><br>		 | <br>			<p><span class="f_BodyTextTable">Either:</span></p><br><ul><br>	<li>Type a description of the effect of the Transition, or</li><br>	<li>If you have selected the 'Effect is a Behavior' checkbox, select an Activity or behavior to be performed during the Transition (to change this subsequently, click on the ![](../images/browse.png) button to redisplay the 'Select &lt;Item&gt;' dialog)</li><br></ul><br>		 | <br>		                                   |
| <br>			<p class="p_Tableheader"><br>				<span class="f_Tabletext">Trigger Name</span><br>			</p><br>		 | <br>			<p><span class="f_BodyTextTable">Specify the name of the trigger; either:</span></p><br><ul><br>	<li>Type the name, or</li><br>	<li>Select an existing trigger in the model from the Select &lt;Item&gt; dialog, which you display by clicking on the ![](../images/browse.png) button</li><br></ul><br>		 | <br>		                                   |
| <br>			<p class="p_Tableheader"><br>				<span class="f_Tabletext">Trigger Type</span><br>			</p><br>		 | <br>			<p><span class="f_BodyTextTable">Specify the type of trigger:</span></p><br><ul><br>	<li>Call - specifies that the event is a CallEvent, which sends a message to the associated object by invoking an operation</li><br>	<li>Change - specifies that the event is a ChangeEvent, which indicates that the transition is the result of a change in value of an attribute</li><br>	<li>Signal - specifies that the event is a SignalEvent, which corresponds to the receipt of an asynchronous signal instance</li><br>	<li>Time - corresponds to a TimeEvent; which specifies a moment in time</li><br></ul><br>			<p><span class="f_BodyTextTable">Code generation for StateMachines expects a specification value for any of the four types.</span></p><br><br>		 | <br>		                                   |
| <br>			<p class="p_Tableheader"><br>				<span class="f_Tabletext">Specification</span><br>			</p><br>		 | <br>			<p><span class="f_BodyTextTable">Specify the event instigating the Transition; either:</span></p><br><ul><br>	<li>Type the event (time or change), or</li><br>	<li>Select an existing specification in the model using the 'Select &lt;Item&gt;' dialog, which you display by clicking on the ![](../images/browse.png) button</li><br></ul><br>		 | <br>		                                   |
| <br>			<p class="p_Tableheader"><br>				<span class="f_Tabletext">New</span><br>			</p><br>		 | <br>			<p><span class="f_BodyTextTable">Clear the fields ready to begin defining a new trigger.</span></p><br>		 | <br>		                                   |
| <br>			<p class="p_Tableheader"><br>				<span class="f_Tabletext">Save</span><br>			</p><br>		 | <br>			<p><span class="f_BodyTextTable">Save the newly created or edited trigger.</span></p><br>		 | <br>		                                   |
| <br>			<p class="p_Tableheader"><br>				<span class="f_Tabletext">Delete</span><br>			</p><br>		 | <br>			<p><span class="f_BodyTextTable">Remove the selected trigger from the list.</span></p><br>		 | <br>		                                   |
| <br>			<p class="p_Tableheader"><br>				<span class="f_Tabletext"><trigger list=""></trigger></span><br>			</p><br>		 | <br>			<p><span class="f_BodyTextTable">List the existing triggers, which might or might not have names and types, and which can include triggers created in older models.</span></p><br>		 | <br>		                                   |

| поле                                     | действие                                 | Смотрите также                           |
|------------------------------------------|------------------------------------------|------------------------------------------|
| <br>			<p class="p_Tableheader"><br>				<span class="f_Tabletext"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">охрана</font></font></span><br>			</p><br>		 | <br>			<p><span class="f_BodyTextTable"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Введите выражение, которое будет оцениваться после отправки события, но до запуска соответствующего перехода. </font></font></span></p><br>			<p><span class="f_BodyTextTable"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Если в это время защита верна, переход включен; </font><font style="vertical-align: inherit;">в противном случае он отключен.</font></font></span></p><br>		 | <br>		                                   |
| <br>			<p class="p_Tableheader"><br>				<span class="f_Tabletext"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Эффект - это поведение</font></font></span><br>			</p><br>		 | <br>			<p><span class="f_BodyTextTable"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Преобразуйте поле «Эффект» из поля с произвольным текстом в определение определенного действия или поведения. </font></font></span></p><br>			<p><span class="f_BodyTextTable"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Откроется диалоговое окно «Выбрать &lt;Item&gt;», в котором вам будет предложено выбрать элемент Activity или поведения из модели.</font></font></span></p><br>		 | <br>			<a href="../modeling/instanceclassifier.html"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Выбрать </font></font><item><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> диалог</font></font></item></a><br>		 |
| <br>			<p class="p_Tableheader"><br>				<span class="f_Tabletext"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">эффект</font></font></span><br>			</p><br>		 | <br>			<p><span class="f_BodyTextTable"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Либо:</font></font></span></p><br><ul><br>	<li><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Введите описание эффекта Перехода или</font></font></li><br>	<li><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Если вы установили флажок «Эффект - это поведение», выберите действие или поведение, которое будет выполняться во время перехода (чтобы впоследствии изменить это, нажмите </font></font>![](../images/browse.png)<font style="vertical-align: inherit;"><font style="vertical-align: inherit;">кнопку, чтобы снова отобразить диалоговое окно «Выбрать &lt;элемент&gt;»).</font></font></li><br></ul><br>		 | <br>		                                   |
| <br>			<p class="p_Tableheader"><br>				<span class="f_Tabletext"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Имя триггера</font></font></span><br>			</p><br>		 | <br>			<p><span class="f_BodyTextTable"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Укажите название триггера; </font><font style="vertical-align: inherit;">либо:</font></font></span></p><br><ul><br>	<li><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Введите имя или</font></font></li><br>	<li><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Выберите существующий триггер в модели из диалогового окна Select &lt;Item&gt;, которое отображается при нажатии </font></font>![](../images/browse.png)<font style="vertical-align: inherit;"><font style="vertical-align: inherit;">кнопки</font></font></li><br></ul><br>		 | <br>		                                   |
| <br>			<p class="p_Tableheader"><br>				<span class="f_Tabletext"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Тип триггера</font></font></span><br>			</p><br>		 | <br>			<p><span class="f_BodyTextTable"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Укажите тип триггера:</font></font></span></p><br><ul><br>	<li><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Вызов - указывает, что событие является CallEvent, которое отправляет сообщение связанному объекту, вызывая операцию.</font></font></li><br>	<li><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Change - указывает, что событие является ChangeEvent, которое указывает, что переход является результатом изменения значения атрибута.</font></font></li><br>	<li><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Signal - указывает, что событие является SignalEvent, что соответствует получению экземпляра асинхронного сигнала.</font></font></li><br>	<li><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Время - соответствует TimeEvent; </font><font style="vertical-align: inherit;">который указывает момент времени</font></font></li><br></ul><br>			<p><span class="f_BodyTextTable"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Генерация кода для StateMachines предполагает значение спецификации для любого из четырех типов.</font></font></span></p><br><br>		 | <br>		                                   |
| <br>			<p class="p_Tableheader"><br>				<span class="f_Tabletext"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Технические характеристики</font></font></span><br>			</p><br>		 | <br>			<p><span class="f_BodyTextTable"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Укажите событие, инициирующее Переход; </font><font style="vertical-align: inherit;">либо:</font></font></span></p><br><ul><br>	<li><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Введите событие (время или изменение), или</font></font></li><br>	<li><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Выберите существующую спецификацию в модели, используя диалоговое окно «Выбрать &lt;элемент&gt;», которое отображается при нажатии </font></font>![](../images/browse.png)<font style="vertical-align: inherit;"><font style="vertical-align: inherit;">кнопки</font></font></li><br></ul><br>		 | <br>		                                   |
| <br>			<p class="p_Tableheader"><br>				<span class="f_Tabletext"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">новый</font></font></span><br>			</p><br>		 | <br>			<p><span class="f_BodyTextTable"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Очистите поля, чтобы начать определение нового триггера.</font></font></span></p><br>		 | <br>		                                   |
| <br>			<p class="p_Tableheader"><br>				<span class="f_Tabletext"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Сохранить</font></font></span><br>			</p><br>		 | <br>			<p><span class="f_BodyTextTable"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Сохраните вновь созданный или отредактированный триггер.</font></font></span></p><br>		 | <br>		                                   |
| <br>			<p class="p_Tableheader"><br>				<span class="f_Tabletext"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Удалить</font></font></span><br>			</p><br>		 | <br>			<p><span class="f_BodyTextTable"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Удалите выбранный триггер из списка.</font></font></span></p><br>		 | <br>		                                   |
| <br>			<p class="p_Tableheader"><br>				<span class="f_Tabletext"><trigger list=""></trigger></span><br>			</p><br>		 | <br>			<p><span class="f_BodyTextTable"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Перечислите существующие триггеры, которые могут иметь или не иметь имена и типы и которые могут включать триггеры, созданные в более старых моделях.</font></font></span></p><br>		 | <br>		                                   |

Notes
* Fork and Join segments can have neither triggers nor guards
* You can identify hidden triggers and locate triggers in the Browser window, using the 'Find Triggers Associated' option on the Transition connector context menu; if one trigger exists for the Transition it is immediately highlighted in the Browser window, if more than one trigger exists the 'Element Usage' dialog displays - select the required trigger and click on the Open button to highlight the trigger in the Browser window
* You can define a self-Transition as an Internal Transition, and represent the connector and its properties in a compartment of the State element

Ноты
* Сегменты разветвления и соединения не могут иметь ни триггеров, ни предохранителей.
* Вы можете определить скрытые триггеры и найти триггеры в окне браузера , используя параметр «Найти связанные триггеры» в контекстном меню соединителя перехода; если для перехода существует один триггер, он немедленно выделяется в окне браузера, если существует более одного триггера, отображается диалоговое окно «Использование элемента» - выберите требуемый триггер и нажмите кнопку « Открыть», чтобы выделить триггер в окне браузера.
* Вы можете определить самопереход как внутренний переход и представить соединитель и его свойства в разделе элемента состояния.

Toolbox icon

![](_src/c-transition.png)

Learn more
* [StateMachine Diagrams](https://sparxsystems.com/enterprise_architect_user_guide/15.1/model_domains/statediagram.html)
* [Internal Transition](https://sparxsystems.com/enterprise_architect_user_guide/15.1/model_domains/internal_transition.html)


Выучить больше
* Диаграммы StateMachine
* Внутренний переход

OMG UML Specification:
The OMG UML specification (UML Superstructure Specification, v2.1.1, p.568) states:

A transition is a directed relationship between a source vertex and a target vertex. It may be part of a compound transition, which takes the state machine from one state configuration to another, representing the complete response of the state machine to an occurrence of an event of a particular type.

Спецификация OMG UML:
Спецификация OMG UML (Спецификация надстройки UML, v2.1.1, стр.568) гласит:

Переход - это направленное отношение между исходной вершиной и целевой вершиной. Это может быть часть составного перехода, который переводит конечный автомат из одной конфигурации состояний в другую, представляя полный ответ конечного автомата на возникновение события определенного типа.
